package org.edu.modules.sbzc.fund.service.impl;

import org.edu.common.base.BasePageDto;
import org.edu.common.base.BaseServiceImpl;
import org.edu.common.utils.ConvertUtils;
import org.edu.common.base.BaseServiceImpl;
import org.edu.modules.sbzc.fund.mapper.VeSbzcZcAssetMapper;
import org.edu.modules.sbzc.fund.entity.VeSbzcZcAsset;
import org.edu.modules.sbzc.fund.dto.VeSbzcZcAssetDto;
import org.edu.modules.sbzc.fund.service.VeSbzcZcAssetService;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;


/**
 * 实现类
 */
@Service
public class VeSbzcZcAssetServiceImpl extends BaseServiceImpl<VeSbzcZcAsset, VeSbzcZcAssetMapper> implements VeSbzcZcAssetService {

    public IPage<VeSbzcZcAssetDto> pageDto(BasePageDto page, @Param(Constants.WRAPPER) Wrapper queryWrapper){
        return mapper.pageDto(page,queryWrapper);
    }
    /**
    * 查询实体类
    */
    public VeSbzcZcAssetDto findDtoById(String id) {
        VeSbzcZcAsset entity = super.findById(id);
        VeSbzcZcAssetDto dto = ConvertUtils.convertToDto(entity, VeSbzcZcAssetDto.class);
        return dto;
    }

    /**
    * 新增或者修改
    */
    public void insertOrUpdate(VeSbzcZcAssetDto dto,Boolean isAdd){
        if(isAdd){
            super.insert(dto);
        }else{
            super.update(dto);
        }
    }

    /**
     * 更改固资状态
     * @param assetId
     * @param Status
     */
    @Override
    public void updateAssetStatus(String assetId,String Status){
        VeSbzcZcAssetDto dto = this.findDtoById(assetId);
        dto.setStatus(Status);
        this.update(dto);
    }

}
